package com.ruoyi.worker.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * @ClassName WorkerInfos
 * @Author zhanglei
 * Date 2021/8/24 14:36
 * @Version 1.0
 **/
public class WorkerInfos extends BaseEntity {
    private static final long serialVersionUID = 1L;
    @Excel(name = "员工序号", cellType = Excel.ColumnType.NUMERIC)
    private int id;
    /**
     * 员工姓名
     **/
    @Excel(name = "员工姓名")
    private String workerName;
    /**
     * 员工性别
     **/
    @Excel(name = "性别", readConverterExp = "1=男,2=女")
    private Integer sex;
    /**
     * 手机号码
     **/
    @Excel(name = "电话号码")
    private String phoneCode;
    /**
     * 省份证号
     **/
    @Excel(name = "身份证号码", width = 32)
    private String idCard;
    /**
     * 班次
     **/
    @Excel(name = "班车", readConverterExp = "1=早班,2=夜班,3=通班")
    private Integer timeShiftType;
    private String timeShiftName;
    /**
     * 供应商
     **/
    @Excel(name = "供应商")
    private String company;
    /**
     * 报名时间
     **/
    @Excel(name = "报名时间", dateFormat = "yyyy-mm-dd hh:mm:ss", width = 25)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date registrationTime;

    /**
     * 上班签到时间
     **/
    @Excel(name = "上班签到时间", dateFormat = "yyyy-mm-dd hh:mm:ss", width = 25)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date signInTime;

    /**
     * 下班时间
     **/
    @Excel(name = "下班签到时间", dateFormat = "yyyy-mm-dd hh:mm:ss", width = 25)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date offWorkTime;

    /**
     * 银行卡
     **/
    @Excel(name = "银行卡", width = 30)
    private String bankCardNumber;
    /**
     * 银行地址
     **/
    @Excel(name = "开户行")
    private String bankAddress;
    /**
     * 是否黑名单 1=否,0=是
     **/
    @Excel(name = "黑名单", readConverterExp = "1=否,0=是")
    private Integer status;
    /**
     * 备注
     **/
    @Excel(name = "备注")
    private String remark;
    private String sexStr;
    private Integer workStatus;
    private Integer companyId;
    private String orderCode;
    //身份证上传位置id
    private String mediaFileId;
    //临时工年龄
    private Integer age;


    public String getOrderCode() {
        return orderCode;
    }

    public void setOrderCode(String orderCode) {
        this.orderCode = orderCode;
    }

    public WorkerInfos() {
    }

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getWorkerName() {
        return workerName;
    }

    public void setWorkerName(String workerName) {
        this.workerName = workerName;
    }

    public Integer getSex() {
        return sex;
    }

    public void setSex(Integer sex) {
        this.sex = sex;
    }

    public String getPhoneCode() {
        return phoneCode;
    }

    public void setPhoneCode(String phoneCode) {
        this.phoneCode = phoneCode;
    }

    public String getIdCard() {
        return idCard;
    }

    public void setIdCard(String idCard) {
        this.idCard = idCard;
    }

    public Integer getTimeShiftType() {
        return timeShiftType;
    }

    public void setTimeShiftType(Integer timeShiftType) {
        this.timeShiftType = timeShiftType;
    }

    public String getTimeShiftName() {
        return timeShiftName;
    }

    public void setTimeShiftName(String timeShiftName) {
        this.timeShiftName = timeShiftName;
    }

    public String getCompany() {
        return company;
    }

    public void setCompany(String company) {
        this.company = company;
    }

    public Date getRegistrationTime() {
        return registrationTime;
    }

    public void setRegistrationTime(Date registrationTime) {
        this.registrationTime = registrationTime;
    }

    public Date getSignInTime() {
        return signInTime;
    }

    public void setSignInTime(Date signInTime) {
        this.signInTime = signInTime;
    }

    public Date getOffWorkTime() {
        return offWorkTime;
    }

    public void setOffWorkTime(Date offWorkTime) {
        this.offWorkTime = offWorkTime;
    }

    public String getBankCardNumber() {
        return bankCardNumber;
    }

    public void setBankCardNumber(String bankCardNumber) {
        this.bankCardNumber = bankCardNumber;
    }

    public String getBankAddress() {
        return bankAddress;
    }

    public void setBankAddress(String bankAddress) {
        this.bankAddress = bankAddress;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    @Override
    public String getRemark() {
        return remark;
    }

    @Override
    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getSexStr() {
        return sexStr;
    }

    public void setSexStr(String sexStr) {
        this.sexStr = sexStr;
    }

    public Integer getWorkStatus() {
        return workStatus;
    }

    public void setWorkStatus(Integer workStatus) {
        this.workStatus = workStatus;
    }

    public Integer getCompanyId() {
        return companyId;
    }

    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }

    public String getMediaFileId() {
        return mediaFileId;
    }

    public void setMediaFileId(String mediaFileId) {
        this.mediaFileId = mediaFileId;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("workerName", getWorkerName())
                .append("sex", getSex())
                .append("phoneCode", getPhoneCode())
                .append("idCard", getIdCard())
                .append("timeShiftType", getTimeShiftType())
                .append("timeShiftName", getWorkerName())
                .append("company", getCompany())
                .append("registrationTime", getRegistrationTime())
                .append("signInTime", getSignInTime())
                .append("offWorkTime", getOffWorkTime())
                .append("bankCardNumber", getBankCardNumber())
                .append("bankAddress", getBankAddress())
                .append("status", getStatus())
                .append("remark", getRemark())
                .append("sexStr", getSexStr())
                .append("workStatus", getWorkStatus())
                .append("companyId", getCompanyId())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .append("orderCode",getOrderCode())
                .append("mediaFileId",getMediaFileId())
                .append("age",getAge())
                .toString();
    }
}